﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Linq.Expressions;
using System.Text;
using System.Threading.Tasks;
using Tracker.Domain.Entities;

namespace Tracker.Data.Repository
{
    public interface IRepository<T> where T : BaseEntity
    {
        void Add(T entity);
        void Delete(int id);
        void Delete(T entity);
        T Get(Expression<Func<T, bool>> predicate);
        IList<T> GetAll();
        IList<T> GetAll(Expression<Func<T, bool>> predicate);
    }
}
